package com.weixing.mall.provider.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.weixing.mall.base.enums.WhetherEnum;
import com.weixing.mall.provider.api.model.enums.OrderTypeEnum;
import com.weixing.mall.provider.model.enums.*;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * OrderShowVo
 *
 * @author  gjq
 * @date  2019/10/15
 * @since  1.0
 **/
@Data
public class OrderShowVo {

    /**
     * 订单id
     */
    private Long id;
    /**
     * 下单人id
     */
    private Long buyerId;
    /**
     * 订单编号
     */
    private String orderSn;
    /**
     * 订单金额
     */
    private Double orderPrice;
    /**
     * 实际金额
     */
    private Double actualPrice;
    /**
     * 订单识别码
     */
    private String identificationCode;
    /**
     * 物流单号
     */
    private String expressSn;
    /**
     * 原始物流单号
     */
    private String beforExpressSn;
    /**
     * 是否已支付
     */
    private WhetherEnum isPay;
    /**
     * 审核时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date auditTime;
    /**
     * 更新时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date updatedTime;
    /**
     * 发货时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date shipTime;
    /**
     * 接受时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date receiptTime;
    /**
     * 订单状态
     */
    private OrderStateEnum orderStatus;
    /**
     * 前台状态
     */
    private OrderFrontStateEnum frontOrderStatus;
    /**
     * 代理优惠id
     */
    private String agentSn;
    /**
     * 代理名称
     */
    private String agentName;
    /**
     * 客服id
     */
    private Long customerId;
    /**
     * 发货员id
     */
    private Long shipperId;
    /**
     * 订单类型
     */
    private OrderTypeEnum orderType;
    /**
     * 是否结算
     */
    private OrderIsSettleEnum isSettle;
    /**
     * 订单来源
     */
    private OrderFromEnum orderFrom;
    /**
     * 仓库id
     */
    private Long depotId;
    /**
     * ？？
     */
    private Long deptId;
    /**
     * 客户备注
     */
    private String remark;
    /**
     * 活动id
     */
    private String actId;
    /**
     * 下单时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date createdTime;
    /**
     * 下单人
     */
    private String buyer;

    /**
     * 身高
     */
    private Double height;
    /**
     * 体重
     */
    private Double weight;
    /**
     * 客户名称（联系人）
     */
    private String contactUser;
    /**
     * 联系电话
     */
    private String contactPhone;
    /**
     * 收货地址
     */
    private String addrDetail;
    /**
     * 操作时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date operationTime;
    /**
     * 商品货号
     */
    private String goodsSn;
    /**
     * 商品名称
     */
    private String goodsName;
    /**
     * 供应商
     */
    private String supplierName;
    /**
     * sku描述
     */
    private String productSkuDesp;
    /**
     * 商品图片
     */
    private String image;
    /**
     * 商品id
     */
    private Long goodsId;

    /**
     * 省
     */
    private String province;
    /**
     * 市
     */
    private String city;
    /**
     * 区县
     */
    private String region;
    /**
     * 街道
     */
    private String town;


    /**
     * 仓库名称
     */
    private String depotName;
    /**
     * 客服名称
     */
    private String customerName;
    /**
     * 发货员名称
     */
    private String shipperName;

    /**
     * 发货员名称
     */
    private String shipperRemark;
    /**
     * 客服备注
     */
    private String kefuRemark;
    /**
     * 外采价格
     */
    private BigDecimal outerPrice;
    /**
     *物流信息
     */
    private String logisticsInfo;
    /**
     *原始物流信息
     */
    private String beforLogisticsInfo;
    /**
     * 流水号
     */
    private String outTradeNo;

    /**
     * 是否换货
     */
    private WhetherEnum afterSaleTag;
    /**
     * 待货天数
     */
    private Integer waitDay;

    /**
     * 货品状态
     */
    private ProductStatusEnum itemStatus;

    /**
     * 商品分类
     */
    private String catName;

    /**
     * 市场价
     */
    private  String marketPrice;
}
